﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace LectorHuellaC
{
    public partial class OpcionesAccesoReloj : Form
    {
        string statusConection = "";
        public void tipoConexion(String conection)
        {
            statusConection = conection;
            label1.Text = statusConection;
        }

        String versionapp = "A 1.0";
        public OpcionesAccesoReloj()
        {
            InitializeComponent();
            this.Text = ":: Reloj Checador :: " + versionapp + " (" + this.Text + ")";
        }

        private void groupBox1_Enter(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            DialogResult respuesta = MessageBox.Show("¿Esta seguro que desea actualizar la opcion de acceso al reloj checador?", "Actualizar opciones de acceso", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
            if (respuesta == DialogResult.No)
            {
                return;
            }

            string IdEmpresa;
            string IdSucursal;

            IdEmpresa = Settings1.Default.IdEmpresa.ToString();
            IdSucursal = Settings1.Default.IdSucursal.ToString();


            if (radioHuella.Checked)
            {
                string sentencia = "";
                string ConsultaBD = "Select OpcionAcceso from reloj_opcionesacceso where IdEmpresa = " + IdEmpresa + " And IdSucursal = '" + IdSucursal +"'";
                ConectaBD conBD = new ConectaBD();
                DataSet ds = new DataSet();
                ds = conBD.Consulta(ConsultaBD);
                if (ds.Tables.Count == 0)
                {
                    MessageBox.Show("Error en la consulta de Opciones de Acceso (T)", "Opciones de Acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }
                int filas = ds.Tables["Resultado"].Rows.Count;
                if (filas > 0)
                {
                    sentencia = "update reloj_opcionesacceso set OpcionAcceso = 'HUE' where IdEmpresa = " + IdEmpresa + " and IdSucursal = '" + IdSucursal + "'";
                    bool correcto = conBD.InsertUpdate(sentencia);
                    if (correcto == false)
                    {
                        MessageBox.Show("Error en la actualizacion", "Opcion de acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }                
                }
                else
                    if (filas == 0)
                    {
                        sentencia = "insert into reloj_opcionesacceso (idempresa,idsucursal,opcionAcceso) values (" + IdEmpresa + ",'" + IdSucursal + "', 'HUE')";
                        bool correcto = conBD.InsertUpdate(sentencia);
                        if (correcto == false)
                        {
                            MessageBox.Show("Error en la actualizacion", "Opcion de acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        }
                    }
            }
            if (radioCodbar.Checked)
            {
                string sentencia = "";
                string ConsultaBD = "Select OpcionAcceso from reloj_opcionesacceso where IdEmpresa = " + IdEmpresa + " And IdSucursal = '" + IdSucursal + "'";
                ConectaBD conBD = new ConectaBD();
                DataSet ds = new DataSet();
                ds = conBD.Consulta(ConsultaBD);
                if (ds.Tables.Count == 0)
                {
                    MessageBox.Show("Error en la consulta de Opciones de Acceso (T)", "Opciones de Acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }
                int filas = ds.Tables["Resultado"].Rows.Count;
                if (filas > 0)
                {
                    sentencia = "update reloj_opcionesacceso set OpcionAcceso = 'TAR' where IdEmpresa = " + IdEmpresa + " and IdSucursal = '" + IdSucursal + "'";
                    bool correcto = conBD.InsertUpdate(sentencia);
                    if (correcto == false)
                    {
                        MessageBox.Show("Error en la actualizacion", "Opcion de acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }                
                }
                else
                    if (filas == 0)
                    {
                        sentencia = "insert into reloj_opcionesacceso (idempresa,idsucursal,opcionAcceso) values (" + IdEmpresa + ",'" + IdSucursal + "', 'TAR')";
                        bool correcto = conBD.InsertUpdate(sentencia);
                        if (correcto == false)
                        {
                            MessageBox.Show("Error en la actualizacion", "Opcion de acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        }
                    }
            }
            if (radioCaptura.Checked)
            {
                string sentencia = "";
                string ConsultaBD = "Select OpcionAcceso from reloj_opcionesacceso where IdEmpresa = " + IdEmpresa + " And IdSucursal = '" + IdSucursal + "'";
                ConectaBD conBD = new ConectaBD();
                DataSet ds = new DataSet();
                ds = conBD.Consulta(ConsultaBD);
                if (ds.Tables.Count == 0)
                {
                    MessageBox.Show("Error en la consulta de Opciones de Acceso (T)", "Opciones Acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }

                int filas = ds.Tables["Resultado"].Rows.Count;
                if (filas > 0)
                {                    
                    sentencia = "update reloj_opcionesacceso set OpcionAcceso = 'CAP' where IdEmpresa = " + IdEmpresa + " and IdSucursal = '" + IdSucursal + "'";
                    bool correcto = conBD.InsertUpdate(sentencia);
                    if (correcto == false)
                    {
                        MessageBox.Show("Error en la actualizacion", "Opcion de acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }                   
                }
                else
                    if (filas == 0)
                    {
                        sentencia = "insert into reloj_opcionesacceso (idempresa,idsucursal,opcionAcceso) values (" + IdEmpresa + ",'" + IdSucursal + "', 'CAP')";
                        bool correcto = conBD.InsertUpdate(sentencia);
                        if (correcto == false)
                        {
                            MessageBox.Show("Error en la actualizacion", "Opcion de acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        }
                    }
            }

            this.Close();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void OpcionesAccesoReloj_Load(object sender, EventArgs e)
        {
            string IdEmpresa;
            string IdSucursal;
            string OpcionAcceso;

            IdEmpresa = Settings1.Default.IdEmpresa.ToString();
            IdSucursal = Settings1.Default.IdSucursal;

                string ConsultaBD = "Select OpcionAcceso from reloj_opcionesacceso where IdEmpresa = " + IdEmpresa + " And IdSucursal = '" + IdSucursal + "'";
                ConectaBD conBD = new ConectaBD();
                DataSet ds = new DataSet();
                ds = conBD.Consulta(ConsultaBD);
                if (ds.Tables.Count == 0)
                {
                    MessageBox.Show("Error en la consulta de opciones de acceso (T)", "Opciones Acceso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }
                if (ds.Tables["Resultado"].Rows.Count > 0)
                {
                    OpcionAcceso = ds.Tables["Resultado"].Rows[0]["OpcionAcceso"].ToString();
                    if (OpcionAcceso == "TAR")
                    {
                        radioCodbar.Checked = true;
                    }
                    if (OpcionAcceso == "CAP")
                    {
                        radioCaptura.Checked = true;
                    }
                    if (OpcionAcceso == "HUE")
                    {
                        radioHuella.Checked = true;
                    }
                }
                else
                {
                    radioHuella.Checked = true; // por default si no hay registro
                }

        }
    }
}
